package com.sunlake.spring.main.common.utils;

import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.stereotype.Component;

/**
 * 邮件发送工具类
 */
@Component
@Slf4j
public class MailUtil {

    @Autowired
    private JavaMailSender mailSender;

    @Value("${spring.mail.username}")
    private String from;

    /**
     * 发送简单邮件
     * @param to 收件人邮箱
     * @param subject 邮件主题
     * @param content 邮件内容
     * @return 是否发送成功
     */
    public boolean sendSimpleMail(String to, String subject, String content) {
//        try {
//            SimpleMailMessage message = new SimpleMailMessage();
//            message.setFrom(from);
//            message.setTo(to);
//            message.setSubject(subject);
//            message.setText(content);
//
//            mailSender.send(message);
//            log.info("邮件发送成功: 收件人={}", to);
//            return true;
//        } catch (Exception e) {
//            log.error("邮件发送失败: 收件人={}, 错误={}", to, e.getMessage());
//            return false;
//        }
        return true;
    }

    /**
     * 发送验证码邮件
     * @param to 收件人邮箱
     * @param code 验证码
     * @return 是否发送成功
     */
    public boolean sendVerificationCode(String to, String code) {
//        String subject = "【SunLake】您的验证码";
//        String content = String.format("尊敬的用户，您的验证码是：%s\n请在5分钟内使用，过期将失效。\n\n请勿将验证码透露给他人！", code);
//        return sendSimpleMail(to, subject, content);
        return true;
    }
}
